Method of reconstructing images for spiral and non-spiral computer tomography

ABSTRACT

General scheme processes and systems for constructing algorithms for reconstructing images of objects that have been scanned in a spiral or non-spiral fashions with detectors. Application of the scheme requires finding of a weight function, which would lead to the required reconstruction algorithm. This general scheme can use a C-arm scan with the closed x-ray source trajectory and gives a new, theoretically exact and efficient (i.e., with the convolution-based FBP structure) reconstruction algorithm. The invention can also utilize the algorithms disclosed in an earlier application U.S. patent application Ser. No. 10/143,160 filed May 10, 2002, entitled: Exact Filtered Back Projection (FBP) Algorithm For Spiral Computer Tomography, which claims the benefit of U.S. Provisional Application No. 60/312,827 filed Aug. 16, 2001, also fit into the general scheme.

This invention relates to computer tomography, and in particular to processes and systems for reconstructing three-dimensional images from the data obtained by spiral and non-spiral scans, and this invention is a Division of 10/389,090 filed Mar. 14, 2003 now U.S. Pat. No. 6,771,733, and is a continuation-in-part of U.S. application Ser. No. 10/143,160 filed May 10, 2002, now U.S. Pat. No. 6,574,299, entitled: Exact Filtered Back Projection (FBP) Algorithm For Spiral Computer Tomography, which claims the benefit of U.S. Provisional Application 60/312,827 filed Aug. 16, 2001, and this invention claims the benefit of priority to U.S. Provisional Application 60/379,547 filed May 10, 2002, all by the same inventor, and by the same assignee as the subject application, which are all incorporated by reference.

BACKGROUND AND PRIOR ART

Over the last thirty years, computer tomography (CT) has gone from image reconstruction based on scanning in a slice-by-slice process to spiral scanning. From the 1970s to 1980s the slice-by-slice scanning was used. In this mode the incremental motions of the patient on the table through the gantry and the gantry rotations were performed one after another. Since the patient was stationary during the gantry rotations, the trajectory of the x-ray source around the patient was circular. Pre-selected slices through the patient have been reconstructed using the data obtained by such circular scans. From the mid 1980s to present day, spiral type scanning has become the preferred process for data collection in CT. Under spiral scanning a table with the patient continuously moves through the gantry that is continuously rotating about the table. At first, spiral scanning has used one-dimensional detectors, which receive data in one dimension (a single row of detectors). Later, two-dimensional detectors, where multiple rows (two or more rows) of detectors sit next to one another, have been introduced. In CT there have been significant problems for image reconstruction especially for two-dimensional detectors. In what follows the data provided by the two-dimensional detectors will be referred to as cone-beam (CB) data or CB projections.

In addition to spiral scans there are non-spiral scans, in which the trajectory of the x-ray source is different from spiral. In medical imaging, non-spiral scans are performed using a C-arm device.

For three-dimensional (also known as volumetric) image reconstruction from the data provided by a spiral and non-spiral scans with two-dimensional detectors, there are two known groups of algorithms: Exact algorithms and Approximate algorithms, that each have known problems. Under ideal circumstances, exact algorithms can provide a replication of an exact image. Thus, one should expect that exact algorithms would produce images of good quality even under non-ideal (that is, realistic) circumstances. However, exact algorithms can be known to take many hours to provide an image reconstruction, and can take up great amounts of computer power when being used. These algorithms can require keeping considerable amounts of cone beam projections in memory. Additionally, some exact algorithms can require large detector arrays to be operable and can have limits on the size of the patient being scanned.

Approximate algorithms possess a filtered back projection (FBP) structure, so they can produce an image very efficiently and using less computing power than Exact algorithms. However, even under the ideal circumstances they produce an approximate image that may be similar to but still different from the exact image In particular, Approximate algorithms can create artifacts, which are false features in an image. Under certain circumstances these artifacts could be quite severe.

To date, there are no known algorithms that can combine the beneficial attributes of Exact and Approximate algorithms into a single algorithm that is capable of replicating an exact image under the ideal circumstances, uses small amounts of computer power, and reconstructs the exact images in an efficient manner (i.e., using the FBP structure). Here and everywhere below by the phrase that the algorithm of the invention reconstructs an exact image we will mean that in theory the algorithm is capable of reconstructing an exact image. Since in real life any data contains noise and other imperfections, no algorithm is capable of reconstructing an exact image.

Image reconstruction has been proposed in many U.S. Patents. See for example, U.S. Pat. Nos.: 5,663,995 and 5,706,325 and 5,784,481 and 6,014,419 to Hu; U.S. Pat. Nos. 5,881,123 and 5,926,521 and 6,130,930 and 6,233,303 to Tam; U.S. Pat. No. 5,960,055 to Samaresekera et al.; U.S. Pat. No. 5,995,580 to Schaller; U.S. Pat. No. 6,009,142 to Sauer; U.S. Pat. No. 6,072,851 to Sivers; U.S. Pat. Nos. 6,173,032 and 6,459,754 to Besson; U.S. Pat. No. 6,198,789 to Dafni; U.S. Pat. Nos. 6,215,841 and 6,266,388 to Hsieh. However, none of the patents overcome all of the deficiencies to image reconstruction referenced above.

SUMMARY OF THE INVENTION

A primary objective of the invention is to provide a general scheme for creating improved processes and systems for reconstructing images of objects that have been scanned in a spiral or non-spiral fashions with two-dimensional detectors.

In the general setting application of the invented scheme requires finding of a weight function, which would lead to the required inversion algorithm. As a particular case, we show how this general scheme applies to a C-arm scan with the closed x-ray source trajectory and gives us a new, theoretically exact and efficient (i.e., with the convolution-based FBP structure) reconstruction algorithm.

In this particular case we demonstrate how that weight function is found. In addition, we show that the algorithms disclosed in the parent patent Ser. No. 10/143,160 filed May 10, 2002, entitled: Exact Filtered Back Projection (FBP) Algorithm For Spiral Computer Tomography, which claims the benefit of U.S. Provisional Application 60/312,827 filed Aug. 16, 2001, all by the same inventor, and by the same assignee as the subject application, which are all incorporated by reference, also fit into the proposed general scheme by demonstrating the appropriate vectors and coefficients.

Further objects and advantages of this invention will be apparent from the following detailed description of the presently preferred embodiments.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1 shows a c-arm scan assembly that can be used with the subject invention.

FIG. 2 shows an overview of the basic process steps of the invention.

FIG. 3 is a five substep flow chart for preprocessing, corresponding to step 20 of FIG. 2.

FIG. 4 is a seven substep flow chart for finding two sets of lines for filtering, corresponding to step 30 of FIG. 2.

FIG. 5 is a seven substep flow chart for preparation for filtering, corresponding to step 40 of FIG. 2.

FIG. 6 is a seven substep flow chart for filtering, corresponding to step 50 of FIG. 2.

FIG. 7 is a seven substep flow chart for back-projection, corresponding to step 60 FIG. 2.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Before explaining the disclosed embodiments of the present inventions in detail it is to be understood that the invention is not limited in its application to the details of the particular arrangements shown since the invention is capable of other embodiments. Also, the terminology used herein is for the purpose of description and not of limitation.

For purposes of clarity, several definitions of terms being used in this invention will now be described.

Beam can be defined as a beam of particles (such as x-ray particles) that experience for the most part non-scattering interactions as they pass along straight lines through the medium (such as patient) to be scanned. Thus, an individual particle emitted by a source either is absorbed by the medium or travels all the way through it unabsorbed.

Cone beam can be defined as any conical shaped beam (i.e. not necessarily with round cross-section).

The two-dimensional detector (or, detector) can be defined as any device on which the cone beam is incident and which is capable of measuring intensity of the beam as a two-dimensional function (e.g., at a two-dimensional array of points).

This invention is a continuation-in-part of U.S. application Ser. No. 10/143,160 filed May 10, 2002, entitled: Exact Filtered Back Projection (FBP) Algorithm For Spiral Computer Tomography, which claims the benefit of U.S. Provisional Application 60/312,827 filed Aug. 16, 2001, all by the same inventor, and by the same assignee as the subject application, which are all incorporated by reference.

The invention will now be described in more detail by first describing the main inversion formula followed by the novel algorithm. First we introduce the necessary notations.

C is a smooth curve in R³: I→R³, I∃s→y(s)∈R³,  (1) Here I⊂R is a finite union of intervals. S² is the unit sphere in R³, and $\begin{matrix} {{{{D_{f}\left( {y,\Theta} \right)}:={\int_{0}^{\infty}{{f\left( {y + {\Theta\quad t}} \right)}\quad{\mathbb{d}t}}}},\quad{{\Theta \in S^{2}};}}\quad} & (2) \\ {{{\beta\left( {s,x} \right)}:=\frac{x - {y(s)}}{{x - {y(s)}}}},\quad{x \in U},{{s \in I};}} & (3) \end{matrix}$  Π(x,ξ):={z∈R ³:(z−x)·ξ=0}.  (4) Additionally, ƒ is the function representing the distribution of the x-ray attenuation coefficient inside the object being scanned, D_(ƒ)(y,β) is the cone beam transform of ƒ, and β(s,x) is the unit vector from the focal point y(s) pointing towards the reconstruction point x. For β∈S², β^(⊥) denotes the great circle {α∈S²:α·β=0}. Given x∈R³ and ξ∈R³\0, let s_(j)=s_(j)(ξ,ξ·x), j=1, 2, . . . , denote points of intersection of the plane Π(x,ξ) with C. Also

{dot over (y)}(s):=dy/ds;

ÿ(s):=d²y/ds².

Given the focal point y(s) (also referred to as source position), let DP(s) denote a plane where a virtual flat two-dimensional detector can be located for the purpose of measuring the cone-beam projection corresponding to the focal point y(s).

Introduce the sets $\begin{matrix} {{{{Crit}\left( {s,x} \right)}:=\left\{ {{\alpha \in {\beta^{\bot}\left( {s,x} \right)}}:{\prod{\left( {x,\alpha} \right)\quad{is}\quad{tangent}{\quad\quad}{to}\quad C\quad{or}\quad{\prod{\left( {x,\alpha} \right)\quad{contains}\quad{an}\quad{endpoint}\quad{of}\quad C}}}}} \right\}}{{I_{reg}(x)}:={{\left\{ {s \in {I:{{{Crit}\left( {s,x} \right)}\quad{is}\quad a\quad{subset}{\quad\quad}{of}\quad{but}{\quad\quad}{not}\quad{equal}{\quad\quad}{to}\quad{\beta^{\bot}\left( {s,x} \right)}}}} \right\}{{Crit}(x)}}:={\bigcup\limits_{s \in I}{{{Crit}\left( {s,x} \right)}.}}}}} & (5) \end{matrix}$

Sometimes Crit(s,x) coincides with β^(⊥)(s,x). This happens, for example, if β(s,x) is parallel to {dot over (y)}(s) or the line through y(s)∈C and x contains an endpoint of C. If α∈S²\Crit(x) we say that such α is non-critical.

Fix any x∈R³\C where ƒ needs to be computed. The main assumptions about the trajectory C are the following.

Property C1. (Completeness condition) Any plane through x intersects C at least at one point.

Property C2. The number of directions in Crit(s,x) is uniformly bounded on I_(reg)(x).

Property C3. The number of points in Π(x,α)∩C is uniformly bounded on S²\Crit(x).

Property C1 is the most important from the practical point of view. Properties C2 and C3 merely state that the trajectory C is not too exotic (which rarely happens in practice).

An important ingredient in the construction of the inversion formula is weight function n₀(s,x,α),s∈I_(reg)(x),α∈β^(⊥)(s,x)\Crit(s,x). Define $\begin{matrix} {{{n_{\Sigma}\left( {x,\alpha} \right)} = {\sum\limits_{j}{n_{0}\left( {s_{j},x,\alpha} \right)}}},{s_{j} = {s_{j}\left( {\alpha,{\alpha \cdot x}} \right)}},{\alpha \in {S^{2}\backslash{{Crit}(x)}}}} & (6) \\ {{n\left( {s,x,\alpha} \right)} = \frac{n_{0}\left( {s,x,\alpha} \right)}{n_{\Sigma}\left( {x,\alpha} \right)}} & (7) \end{matrix}$

In equation (6) and everywhere below Σ_(j) denotes the summation over all s_(j) such that y(s_(j))∈C∩Π(x,α). The main assumptions about n₀ are the following.

Property W1. n_(Σ)(x,α)>0 on S².

Property W2. There exist finitely many continuously differentiable functions α_(k)(s,x)∈β^(⊥)(s,x),s∈I_(reg)(x), such that n(s,x,α) is locally constant in a neighborhood of any (s,α), where s∈I_(reg)(x) and ${\alpha \in {\beta^{\bot}\left( {s,x} \right)}},\quad{\alpha \notin {\left( {\bigcup\limits_{k}{\alpha_{k}\left( {s,x} \right)}} \right)\quad\bigcup\quad{{{Crit}\left( {s,x} \right)}.}}}$

The inversion formula, which is to be derived here, holds pointwise. Therefore, if ƒ needs to be reconstructed for all x belonging to a set U, then properties C1-C3, W1, and W2, are supposed to hold pointwise, and not uniformly with respect to x∈U.

Let α₁(s) and α₂(s) be two smooth vector functions with the properties β(s,x)·α₁(s)=β(s,x)·α₂(s)=α₁(s)·α₂(s)=0,|α₁(s)|=|α₂(s)|=1. Then we can write α=α(s,θ)=α₁(s)cos θ+α₂(s)sin θ.  (8)

Let α^(⊥)(s,θ):=β(s,x)×α(s,θ). The polar angle θ is introduced in such a way that ${\alpha^{\bot}\left( {s,\theta} \right)} = {\frac{\partial}{\partial\theta}{{\alpha\left( {s,\theta} \right)}.}}$ Denote φ(s,x,θ):=sgn(α·{dot over (y)}(s))n(s,x,α),α=α(s,θ).  (9)

Then the general reconstruction formula is given by $\begin{matrix} \begin{matrix} {{f(x)} = {{- \frac{1}{8\quad\pi^{2}}}{\sum\limits_{m}{\int_{l}{\frac{c_{m}\left( {s,x} \right)}{{x - {y(s)}}} \times}}}}} \\ {\int_{0}^{2\pi}{\frac{\partial}{\partial q}{D_{f}\left( {{y(q)},{{\cos\quad{\gamma\beta}\left( {s,x} \right)} +}} \right.}}} \\ {\left. {\sin\quad{{\gamma\alpha}^{\bot}\left( {s,\theta_{m}} \right)}} \right)❘_{q = s}{\frac{d\quad\gamma}{\sin\quad\gamma}{{\mathbb{d}s}.}}} \end{matrix} & (10) \end{matrix}$ Here

θ_(m)'s are the points where φ(s,x,θ) is discontinuous; and

c_(m)(s,x) are values of the jumps: $\begin{matrix} {{c_{m}\left( {s,x} \right)}:={\lim\limits_{ɛ\rightarrow 0^{+}}{\left( {{\phi\left( {s,x,{\theta_{m} + ɛ}} \right)} - {\phi\left( {s,x,{\theta_{m} - ɛ}} \right)}} \right).}}} & (11) \end{matrix}$ A brief step-by-step description of a general image reconstruction algorithm based on equations (10), (11) is as follows.

FIG. 2 shows an overview of the basic process steps 10, 20, 30, 40, 50, 60 of the invention. The steps will now be described.

Step 10. Load the current CB (cone beam) projection into computer memory. Suppose that the mid point of the CB projections currently stored in memory is y(s₀).

Step 20. Preprocessing. Compute numerically the derivative (∂/∂q)D_(ƒ)(y(q),β)|_(q=s) ₀ for all required β.

Step 30. Finding families of lines for filtering. Using vectors α^(⊥)(s,θ_(m)) (see equation (10) and the following paragraph), identify the required families of lines. Then, choose a discrete set of lines from each family.

Step 40. Preparing for filtering. Parameterize points on the said lines selected in Step 30 by polar angle. Using interpolation compute the derivative of the CB data at points on the said lines that correspond to discrete values of the polar angle.

Step 50. Filtering. For each line identified in Step 30 convolve the data for that line computed in Step 40 with filter 1/sin γ.

Step 60. Back-projection. For each reconstruction point x back-project the filtered data found in Step 50 according to equation (10). Then go to Step 10, unless there are no new CB projections to process or image reconstruction at all the required points x have been completed.

PARTICULAR CASES OF THE GENERAL FORMULA

Consider a spiral path of the x-ray source y ₁(s)=R cos(s),y₂(s)=R sin(s),y ₃(s)=s(h/2π), h>0.  (12) Here

s is a real parameter;

h is pitch of the spiral;

R is distance from the x-ray source to the isocenter.

It is known in the literature that any point strictly inside the spiral belongs to one and only one PI segment (see P. E. Danielsson et al. “Towards exact reconstruction for helical cone-beam scanning of long objects. A new detector arrangement and a new completeness condition” in “Proc. 1997 Meeting on Fully 3D Image Reconstruction in Radiology and Nuclear Medicine (Pittsburgh)”, eds. D. W. Townsend and P. E. Kinahan, yr. 1997, pp. 141-144, and M. Defrise, F. Noo, and H. Kudo “A solution to the long-object problem in helical cone-beam tomography”, Physics in Medicine and Biology, volume 45, yr. 2000, pp. 623-643). Recall that a PI segment is a segment of line endpoints of which are located on the spiral and separated by less than one pitch in the axial direction. Let s=s_(b)(x) and s=s₁(x) denote values of the parameter corresponding to the endpoints of the PI segment containing x. We will call I_(PI)(x):=[s_(b)(x),s₁(x)] the PI parametric interval. The part of the spiral corresponding to I_(PI)(x) will be denoted C_(PI)(x). As C, which appears in Section 1, we will take the segment C_(PI)(x). It is clear that any plane through x intersects C_(PI)(x) at least at one point. Also, inside the PI parametric interval there exists {hacek over (s)}={hacek over (s)}(x) such that the plane through y({hacek over (s)}) and parallel to {dot over (y)}({hacek over (s)}),ÿ({hacek over (s)}), contains x. DERIVATION OF THE INVERSION FORMULAS (24), (25) of U.S. parent patent application Ser. No. 10/143,160 filed May 10, 2002, entitled: Exact Filtered Back Projection (FBP) Algorithm For Spiral Computer Tomography, which claims the benefit of U.S. Provisional Application 60/312,827 filed Aug. 16, 2001, all by the same inventor, and by the same assignee as the subject application, which are all incorporated by reference. Let us construct now functions e_(k)(s,x). Denote $\begin{matrix} {{e_{1}\left( {s,x} \right)}:={\frac{\left\lbrack {{\beta\left( {s,x} \right)} \times {\overset{.}{y}(s)}} \right\rbrack \times {\beta\left( {s,x} \right)}}{{\left\lbrack {{\beta\left( {s,x} \right)} \times {\overset{.}{y}(s)}} \right\rbrack \times {\beta\left( {s,x} \right)}}}.}} & (13) \end{matrix}$ By construction, e₁(s,x) is a unit vector in the plane through y(s) and spanned by β(s,x), {dot over (y)}(s). Moreover, e₁(s,x)⊥β(s,x). Given y(s), s∈(s_(b)(x), s₁(x))\{hacek over (s)}(x), find s_(tan)∈I_(PI)(x), s_(tan)≠s, such that the plane through x, y(s), and y(s_(tan)) is tangent to C_(PI)(x) at y(s_(tan)). This is equivalent to solving [(x−y(s _(tan)))×(x−y(s))]·{dot over (y)}(s _(tan))=0, s _(tan) ≠s.  (14) Existence and uniqueness of the solution s_(tan)∈I_(PI)(x) to (14) is shown in A. Katsevich “Theoretically exact FBP-type inversion algorithm for Spiral CT”, SIAM Journal on Applied Mathematics, Vol. 62, pp. 2012-2026 (2002). It is also shown there that s_(tan)(s,x) is smooth with respect to s on (s_(b)(x), s₁(x))\{hacek over (s)}(x) and is made continuous on [s_(b)(x), s₁(x)] by setting s _(tan)(s,x)=s₁(x) if s=s _(b)(x), s _(tan)(s,x)={hacek over (s)}(x) if s={hacek over (s)}(x), s _(tan)(s,x)=s _(b)(x) if s=s ₁(x),  (15)

Once s_(tan)=s_(tan)(s,x) has been found, denote similarly to (13) $\begin{matrix} {{{e_{2}\left( {s,x} \right)}:=\frac{\left\lbrack {{\beta\left( {s,x} \right)} \times \Theta} \right\rbrack \times {\beta\left( {s,x} \right)}}{{\left\lbrack {{\beta\left( {s,x} \right)} \times \Theta} \right\rbrack \times {\beta\left( {s,x} \right)}}}},} & (16) \end{matrix}$ where Θ=sgn(s−s _(tan)(s,x))β(s _(tan) ,x) if s∈(s _(b)(x),s ₁(x))\{hacek over (s)}(x), Θ={dot over (y)}(s _(tan)) if s∈{s _(b)(x),{hacek over (s)}(x),s ₁(x)}.  (17)

By construction, e₂ (s,x) is a unit vector in the plane through x, y(s), and tangent to C_(PI)(x) at y(s_(tan)). In addition, e₂(s,x)⊥β(s,x). Using equation (17) and the inequalities s_(tan)(s,x)>{hacek over (s)}(x) if s<{hacek over (s)}(x), s_(tan)(s,x)<{hacek over (s)}(x) if s>{hacek over (s)}(x), we conclude that e₂(s,x) is continuous and piecewise smooth with respect to s on [s_(b)(x),s₁(x)].

Define n ₀(s,x,α)=sgn(α·{dot over (y)}(s))[sgn(α·e ₁(s,x))+sgn(α·e ₂(s,x))].  (18) It has been proven in A. Katsevich “Theoretically exact FBP-type inversion algorithm for Spiral CT”, SIAM Journal on Applied Mathematics, Vol. 62, pp. 2012-2026 (2002), that in this case n_(Σ)(x,α)=2 a.e. on S² for all s∈I_(PI)(x). Substituting into equation (9) and using equation (7) we obtain $\begin{matrix} {{\phi\left( {s,x,\theta} \right)} = {{\frac{1}{2}\left\lbrack {{{sgn}\left( {{\alpha\left( {s,\theta} \right)} \cdot {e_{1}\left( {s,x} \right)}} \right)} + {{sgn}\left( {{\alpha\left( {s,\theta} \right)} \cdot {e_{2}\left( {s,x} \right)}} \right)}} \right\rbrack}.}} & (19) \end{matrix}$ Thus, φ is discontinuous when α(s,θ) is perpendicular to either e₁(s,x) (and, consequently, {dot over (y)}(s)) or e₂(s,x). The integral with respect to γ in equation (10) is odd when θ→θ+π. Similarly, the values of the jump of φ at two points θ_(m) ₁ and θ_(m) ₂ separated by π differ by a factor −1. So, by inserting an extra factor 2, this integral can be confined to an interval of length π. This implies that we can take α^(⊥)(s,θ_(m))=e_(m)(s,x),m=1,2, and equation (10) transforms into the inversion formulas (24), (25) of U.S. parent patent application Ser. No. 10/143,160 filed May 10, 2002, entitled: Exact Filtered Back Projection (FBP) Algorithm For Spiral Computer Tomography, which claims the benefit of U.S. Provisional Application 60/312,827 filed Aug. 16, 2001, all by the same inventor, and by the same assignee as the subject application, which are all incorporated by reference, (note that all jumps of φ have amplitude 1): $\begin{matrix} {{f = {\frac{1}{2}\left( {{B_{1}f} + {B_{2}f}} \right)}},} & (20) \end{matrix}$ where $\begin{matrix} {{\left( {B_{k}f} \right)(x)}:={{- \frac{1}{2\pi^{2}}}{\int_{I_{PI}{(x)}}^{\quad}{\frac{1}{\left| {x - {y(s)}} \right|} \times {\int_{0}^{2\pi}{\frac{\partial\quad}{\partial q}{D_{f}\left( {{y(q)},{{\cos\quad\gamma\quad{\beta\left( {s,x} \right)}} + {\sin\quad\gamma\quad{e_{k}\left( {s,x} \right)}}}} \right)}{_{q = s}{{\frac{d\quad\gamma}{\sin\quad\gamma}\quad{\mathbb{d}s}},{k = 1},2.}}}}}}}} & (21) \end{matrix}$ DERIVATION OF THE EQUATION (10) of parent U.S. application Ser. No. 10/143,160 filed May 10, 2002, entitled: Exact Filtered Back Projection (FBP) Algorithm For Spiral Computer Tomography, which claims the benefit of U.S. Provisional Application 60/312,827 filed Aug. 16, 2001, all by the same inventor, and by the same assignee as the subject application, which are all incorporated by reference. Choose any ψ∈C^(∞)([0,2π]) with the properties  ψ(0)=0; 0<ψ′(t)<1, t∈[0,2π].  (22) Suppose s₀, s₁, and s₂ are related by s ₁ψ(s ₂ −s ₀)+s ₀ if s ₀ ≦s ₂ <s ₀+2π, s ₁ψ(s ₀ −s ₂)+s ₂ if s ₀−2π<s ₂ <s ₀.  (23) Since ψ(0)=0, s₁=s₁(s₀,s₂) is a continuous function of s₀ and s₂. Equations (22) and (23) imply s₁≠s₂ unless s₀=s₁=s₂. In order to avoid unnecessary complications, we will assume in what follows ψ′(0)=0.5; ψ^((2k+1))(0)=0, k≧1  (24) If (24) holds, then s₁=s₁(s₀,s₂) is a C^(∞) function of s₀ and s₂. Conditions (22) and (24) are very easy to satisfy. One can take, for example, ψ(t)=t/2, and this leads to s ₁=(s ₀ +s ₂)/2, s ₀−2π<s ₂ <s ₀+2π. Denote also $\begin{matrix} \begin{matrix} {{{u\left( {s_{0},s_{2}} \right)} = {\frac{{y\left( {s_{1} \times {y\left( s_{0} \right)}} \right)} \times \left( {{y\left( s_{2} \right)} - {y\left( s_{0} \right)}} \right)}{\left| {\left( {{y\left( s_{1} \right)} - {y\left( s_{0} \right)}} \right) \times \left( {{y\left( s_{2} \right)} - {y\left( s_{0} \right)}} \right)} \right|}{{sgn}\left( {s_{2} - s_{0}} \right)}}},} & {{{{if}\quad 0} < {{s_{2} - s_{0}}} < {2\pi}},} \end{matrix} & \quad & (25) \\ \begin{matrix} {{{u\left( {s_{0},s_{2}} \right)} = \frac{{\overset{.}{y}\left( s_{0} \right)} \times {\overset{¨}{y}\left( s_{0} \right)}}{\left| \left( \left. {{\overset{.}{y}\left( s_{0} \right)} \times {\overset{¨}{y}\left( s_{0} \right)}} \right| \right. \right.}},} & {{{if}\quad s_{2}} = {s_{0}.}} \end{matrix} & \quad & (26) \end{matrix}$ It is shown in A. Katsevich “Improved exact FBP algorithm for Spiral CT” submitted for possible publication to the journal “Advances in Applied Mathematics” in November 2001, that such s₂ exists, is unique, and depends smoothly on s₀. Therefore, this construction defines s₂:=s₂(s₀,x) and, consequently, u(s₀,x):=u(s₀,s₂(s₀,x)). Finally, we set e(s,x):=β(s,x)×u(s,x), n ₀(s,x,α):=sgn(α·{dot over (y)}(s))sgn(α·e(s,x)).  (27) It is proven in A. Katsevich “Improved exact FBP algorithm for Spiral CT” submitted for possible publication to the journal “Advances in Applied Mathematics” in November 2001, that in this case n_(Σ)(x,α)=1 on S² for all s∈I_(PI)(x). Substitution into equation (9) and using equation (7) gives  φ(s,x,θ)=sgn(α(s,θ)·e(s,x)).  (28) So φ is discontinuous when α(s,θ) is perpendicular to e(s,x). Arguing in the same way as before, we immediately obtain the inversion formula equation (10) of U.S. parent patent application Ser. No. 10/143,160 filed May 10, 2002, entitled: Exact Filtered Back Projection (FBP) Algorithm For Spiral Computer Tomography, which claims the benefit of U.S. Provisional Application 60/312,827 filed Aug. 16, 2001, all by the same inventor, and by the same assignee as the subject application, which are all incorporated by reference: $\begin{matrix} {{f(x)} = {{- \frac{1}{2\pi^{2}}}{\int_{I_{PI}{(x)}}^{\quad}{\frac{1}{\left| {x - {y(s)}} \right|}\quad \times {\int_{0}^{2\pi}{\frac{\partial\quad}{\partial q}{D_{f}\left( {{y(q)},{{\cos\quad\gamma\quad{\beta\left( {s,x} \right)}} + {\sin\quad\gamma\quad{e_{k}\left( {s,x} \right)}}}} \right)}{_{q = s}{\frac{d\quad\gamma}{\sin\quad\gamma}\quad{{\mathbb{d}s}.}}}}}}}}} & (29) \end{matrix}$

How to Obtain New Inversion Formulas

Returning to the case of a general trajectory C, take n₀(s,x,α)≡1. It follows from the completeness condition that n_(Σ)(x,α)≧1 on S². So equation (10) becomes an inversion formula in which the constants c_(m) can easily be determined before a scan knowing the trajectory of the x-ray source C. By construction, the inversion formula is theoretically exact. In the same way is in U.S. parent patent application Ser. No. 10/143,160 filed May 10, 2002, entitled: Exact Filtered Back Projection (FBP) Algorithm For Spiral Computer Tomography, which claims the benefit of U.S. Provisional Application 60/312,827 filed Aug. 16, 2001, all by the same inventor, and by the same assignee as the subject application, which are all incorporated by reference, one immediately sees that the formula admits convolution-based filtered back-projection implementation. The function φ(s,x,θ) is discontinuous whenever the plane Π(x,α(s,θ)) is tangent to C or contains endpoints of C, or α(s,θ)⊥e_(k)(s,x) for some k. This means that, in general, for every point x in a region of interest one would have to compute the contribution from the endpoints to the image. If the trajectory of the x-ray source is short (e.g., as in C-arm scanning), this should not cause any problems. However, for long trajectories (e.g., as is frequently the case in spiral scanning), this is undesirable. The approach developed in Section 1 allows one to construct formulas that would not require computing contributions from the endpoints. From equations (6)-(11) it follows that one has to find the function n₀(s,x,α) so that for all s∈I_(reg) the function φ(s,x,θ) is continuous when the plane Π(x,α(s,θ)) passes through an endpoint of C. Note that in the case of C-arm scanning if the trajectory C is closed, such a problem does not arise and we obtain an exact FBP-type inversion formula.

DETAILED DESCRIPTION OF THE NEW GENERAL INVERSION ALGORITHM

As an example we will illustrate how the algorithm works in the case when the trajectory C of a C-arm is closed and n₀(s,x,α)≡1. The algorithm will consist of the following steps 10, 20, 30, 40, 50 and 60 as depicted in FIGS. 2-7.

Step 10(FIG. 2). Load the current CB projection into computer memory. Suppose that the mid point of the CB projections currently stored in memory is y(s₀).

Step 20(FIGS. 2-3). Preprocessing.

Step 21. Choose a rectangular grid of points {circumflex over (x)}_(i,j) that covers the plane DP(s₀).

Step 22. For each {circumflex over (x)}_(i,j) find the unit vector β_(i,j) which points from y(s₀) towards the point {circumflex over (x)}_(i,j) on the plane DP(s₀).

Step 23. Using the CB data D_(ƒ)(y(q),β) for a few values of q close to s₀ find numerically the derivative (∂/∂q)D_(ƒ)(y(q),β_(i,j))|_(q=s) ₀ for all β_(i,j).

Step 24. Store the computed values of the derivative in computer memory.

Step 25. The result of Step 24 is the pre-processed CB data Ψ(s₀,β_(i,j)).

Step 30(FIGS. 2, 4). Finding two sets of lines for filtering.

Step 31. Choose a discrete set of values of the parameter s₂ inside the interval I that corresponds to the trajectory of the x-ray source C.

Step 32. For each selected s₂ find the vector {dot over (y)}(s₂), which is tangent to C at y(s₂).

Step 33. For each selected s₂ find the line, which is obtained by intersecting the plane through y(s₀), y(s₂), and parallel to {dot over (y)}(s₂), with the plane DP(s₀).

Step 34. The collection of lines constructed in Step 33 is the required first set of lines L₁(s₂).

Step 35. Let ω be the polar angle in the plane perpendicular to {dot over (y)}(s₀) and e(ω) be the corresponding unit vector perpendicular to {dot over (y)}(s₀).

Step 36. For a discrete set of values ω, find lines obtained by intersecting the plane through y(s₀) and parallel to {dot over (y)}(s₂), e(ω), with the plane DP(s₀).

Step 37. The collection of lines constructed in Step 36 is the required second set of lines L₂(ω).

Step 40(FIGS. 2, 5). Preparation for filtering

Step 41. Fix a line L from the said sets of lines obtained in Step 30.

Step 42. Parameterize points on that line by polar angle γ in the plane through y(s₀) and L.

Step 43. Choose a discrete set of equidistant values γ_(k) that will be used later for discrete filtering in Step 50.

Step 44. For each γ_(k) find the unit vector β_(k) which points from y(s₀) towards the point on L that corresponds to γ_(k).

Step 45. For all β_(k), using the pre-processed CB data Ψ(s₀,β_(i,j)) for a few values of β_(i,j) close to β_(k) and an interpolation technique, find the value Ψ(s₀,β_(k)).

Step 46. Store the computed values of Ψ(s₀,β_(k)) in computer memory.

Step 47. Repeat Steps 41-45 for all lines L₁(s₂) and L₂ (θ) identified in Step 30.

This way the pre-processed CB data Ψ(s₀,β_(k)) will be stored in computer memory in the form convenient for subsequent filtering along the said lines identified in Step 30.

Step 50(FIGS. 2, 6). Filtering

Step 51. Fix a line from the said families of lines identified in Step 30.

Step 52. Compute FFT of the values of the said preprocessed CB data Ψ(s₀,β_(k)) computed in Step 40 along the said line.

Step 53. Compute FFT of the filter 1/sin γ

Step 54. Multiply the results of Steps 52 and 53.

Step 55. Take the inverse FFT of the result of Step 54.

Step 56. Store the result of Step 55 in computer memory.

Step 57. Repeat Steps 51-56 for all lines in the said families of lines. As a result we get the filtered CB data Φ₁(s₀,β_(k)) and Φ₂(s₀,β_(k)) that correspond to the families of lines L₁ and L₂, respectively.

Step 60(FIGS. 2, 7). Back-projection

Step 61. Fix a reconstruction point x.

Step 62. Find the projection {circumflex over (x)} of x onto the plane DP(s₀) and the unit vector β(s₀,x), which points from y(s₀) towards x.

Step 63. From each family of lines select several lines and points on the said lines that are close to the said projection {circumflex over (x)}. This will give a few values of Φ₁(s₀,β_(k)) and Φ₂(s₀,β_(k)) for β_(k) close to β(s₀,x).

Step 64. Using interpolation, find the values Φ₁(s₀,β(s₀,x)) and Φ₂(s₀,β(s₀,x)) from the said values of Φ₁(s₀,β_(k)) and Φ₂(s₀,β_(k)), respectively, for β_(k) close to β(s₀,x).

Step 65. Compute the contributions from the said filtered CB data Φ₁(s₀,β(s₀,x)) and Φ₂(s₀,β(s₀,x)) to the image being reconstructed at the point x by dividing Φ₁(s₀,β(s₀,x)) and Φ₂(s₀,β(s₀,x)) by |x−y(s₀)| and multiplying by constants c_(m)(s,x) found from equation (11).

Step 66. Add the said contributions to the image being reconstructed at the point x according to a pre-selected scheme for discretization of the integral in equation (10) (e.g., the Trapezoidal scheme).

Step 67. Go to Step 61 and choose a different reconstruction point x.

Additional embodiments of the invented algorithm are possible. For example, if the two-dimensional detector is not large enough to capture the required cross-section of the cone-beam, one can assume that the missing data are zero or use an extrapolation technique to fill in the missing data, and then use the invented algorithm for image reconstruction. Since the missing data will be found approximately, the algorithm will no longer be able to provide the exact image. The result will be an approximate image, whose closeness to the exact image will depend on how accurately the missing data are estimated.

Another embodiment arises when one integrates by parts with respect to s in equation (10) in the same way as in U.S. parent patent application Ser. No. 10/143,160 filed May 10, 2002, entitled: Exact Filtered Back Projection (FBP) Algorithm For Spiral Computer Tomography, which claims the benefit of U.S. Provisional Application 60/312,827 filed Aug. 16, 2001, all by the same inventor, and by the same assignee as the subject application, which are all incorporated by reference, to produce a version of the algorithm that requires keeping only one cone beam projection in memory at a time. An advantage of that version is that no derivative of the cone beam data along the trajectory of the radiation source is required.

More generally, one can come up with approximate algorithms that are based on the back-projection coefficients c_(m)(s,x) and directions of filtering a^(⊥)(s,θ_(m)), which are found from equations (9), (11). Such an approximate algorithm can either be based directly on equation (10) or the equation, which is obtained from it using integration by parts.

For the purpose of simplifying the presentation we used the notion of the plane DP(s₀), which corresponds to a hypothetical virtual flat detector. In this case filtering is performed along lines on the plane. If the detector is not flat (e.g. it can be a section of the cylinder as is the case in spiral CT), then filtering will be performed not along lines, but along some curves on the detector array.

Although the invention describes specific weights and trajectories, the invention can be used with different weights for different or the same trajectories as needed.

While the invention has been described, disclosed, illustrated and shown in various terms of certain embodiments or modifications which it has presumed in practice, the scope of the invention is not intended to be, nor should it be deemed to be, limited thereby and such other modifications or embodiments as may be suggested by the teachings herein are particularly reserved especially as they fall within the breadth and scope of the claims here appended. 

1. A method of computing images derived from computer tomography detectors, comprising the steps of: (a) collecting cone beam data from a detector during a scan of an object; (b) preprocessing the cone beam data, wherein the step of preprocessing includes (bi) computing the derivative of the said data along the source trajectory ${{\frac{\partial\quad}{\partial q}{D_{f}\left( {{y(q)},\Theta} \right)}}}_{q = s},$  where  D_(ƒ) is the cone beam data,  q,s are variables along the source trajectory,  y(q) is the source position as a function of q,  Θ is a unit vector; (c) identifying lines on a plane DP(s), where s is the parameter along the scan path and DP(s) is any plane intersecting the cone beam; (e) convolving the said preprocessed data along said lines with filter 1/sin(γ), where γ is polar angle in the plane containing the current source position and a said line; (f) back projecting said filtered data to form a precursor of said image; and (g) repeating steps a, b, c, d, e, and f until an image of the object is completed.
 2. A method of computing images derived from computer tomography detectors, comprising the steps of: (a) collecting cone beam data from a detector during a scan of an object; (b) identifying lines on a plane Π intersecting the cone beam, the said lines being filtering lines, (c) preprocessing said data along said filtering lines, wherein the step (c) of preprocessing includes computing the derivative of D_(ƒ)(y(s),Θ) with respect to Θ along a direction non-parallel to the plane determined by y(s) and a filtering line, the said plane being a filtering plane, here s is parameter along the scan path, which determines point y(s) on the said path, D_(ƒ)(y,Θ) is the cone beam transform of ƒ corresponding to the x-ray source located at the point y and the direction Θ, ƒ is a function describing the object being scanned; (d) shift invariant filtering said preprocessed data along said filtering lines, wherein the step (d) of filtering includes (i) convolving the data D_(ƒ)(y(s),Θ) with kernel 1/sin(γ) within a filtering plane, where γ is polar angle in the plane, (ii) convolving the derivative of D_(ƒ)(y(s),Θ) with a kernel cot(γ) within a filtering plane, the derivative of D_(ƒ)(y(s),Θ) is the derivative with respect to Θ along a direction non-parallel to the filtering plane, (e) back projecting said filtered data to form a precursor of said image; and (f) repeating steps a, b, c, d, and e until an image of the object is reconstructed. 